package com.piggy.logi.sys.domain;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import com.baomidou.mybatisplus.annotation.*;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;



/**
 * 分段价格对象 logi_price_seg
 *
 * @author piggy
 * @date 2023-08-14
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("logi_price_seg")
public class LogiPriceSeg implements Serializable {

    private static final long serialVersionUID=1L;

    /** id */
    @ApiModelProperty("id")
    @TableId(value = "id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long id;

    /** 方案id */
    @ApiModelProperty("方案id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long planId;

    /** 计费模式 */
    @ApiModelProperty("计费模式")
    private String feeMode;

    /** 开始值(带小数点) */
    @ApiModelProperty("开始值(带小数点)")
    private BigDecimal floatStart;

    /** 结束值(带小数点) */
    @ApiModelProperty("结束值(带小数点)")
    private BigDecimal floatEnd;

    /** 开始值 */
    @ApiModelProperty("开始值")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long intStart;

    /** 结束值 */
    @ApiModelProperty("结束值")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long intEnd;

    /** 价格 */
    @ApiModelProperty("价格")
    private BigDecimal price;

    /** 序号 */
    @ApiModelProperty("序号")
    private Integer sort;

    /** 删除标志（0代表存在 2代表删除） */
    @ApiModelProperty("删除标志（0代表存在 2代表删除）")
    @TableLogic
    private String delFlag;

    /** 创建者 */
    @ApiModelProperty("创建者")
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    /** 创建时间 */
    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 更新者 */
    @ApiModelProperty("更新者")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    /** 更新时间 */
    @ApiModelProperty("更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

}
